/*
 * @(#)FakeRegistryQueryService.java
 * Date 2013-10-06
 * Version 1.0
 * Author Jim Horner
 * Copyright (c)2012
 */


package us.hornerscorners.lamppost.registry.inject;

import java.util.Collection;

import javax.enterprise.context.ApplicationScoped;

import javax.enterprise.inject.Alternative;

import oasis.names.tc.ebxml_regrep.xsd.query._3.AdhocQueryRequest;
import oasis.names.tc.ebxml_regrep.xsd.query._3.AdhocQueryResponse;

import us.hornerscorners.lamppost.exception.ServiceActionException;

import us.hornerscorners.lamppost.model.audit.AuditContext;

import us.hornerscorners.lamppost.model.common.InstanceIdentifier;

import us.hornerscorners.lamppost.model.document.DocumentEntry;
import us.hornerscorners.lamppost.model.document.Folder;
import us.hornerscorners.lamppost.model.document.SubmissionSet;

import us.hornerscorners.lamppost.registry.service.IRegistryQueryService;


/**
 * Class description
 *
 *
 * @version        v1.0, 2013-10-06
 * @author         Jim Horner
 */
@ApplicationScoped
@Alternative
public class FakeRegistryQueryService implements IRegistryQueryService {

    // TODO use RegistryObjectsList to "query"
    // private final RegistryObjectsList

    /**
     * Constructs ...
     *
     */
    public FakeRegistryQueryService() {
        super();
    }

    /**
     * Method description
     *
     *
     * @param body
     *
     * @return
     */
    @Override
    public AdhocQueryResponse executeStoredQuery(AuditContext auditContext,
            AdhocQueryRequest body) {

        return null;
    }

    /**
     * Method description
     *
     *
     * @param entryURNs
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public DocumentEntry[] retrieveDocumentEntries(Collection<String> entryURNs)
            throws ServiceActionException {
        return null;
    }

    /**
     * Method description
     *
     *
     * @param uniqueId
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public DocumentEntry retrieveDocumentEntry(InstanceIdentifier uniqueId)
            throws ServiceActionException {

        return null;
    }

    /**
     * Method description
     *
     *
     * @param entryURN
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public DocumentEntry retrieveDocumentEntry(String entryURN)
            throws ServiceActionException {
        return null;
    }

    /**
     * Method description
     *
     *
     * @param entryURN
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public Folder retrieveFolder(String entryURN) throws ServiceActionException {
        return null;
    }

    /**
     * Method description
     *
     *
     * @param entryURNs
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public Folder[] retrieveFolders(Collection<String> entryURNs)
            throws ServiceActionException {
        return null;
    }

    /**
     * Method description
     *
     *
     * @param entryURN
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public DocumentEntry[] retrieveRelatedDocuments(String entryURN)
            throws ServiceActionException {
        throw new UnsupportedOperationException("Not supported yet.");    // To change body of generated methods, choose Tools | Templates.
    }

    /**
     *    Method description
     *
     *
     *    @param id
     *
     *    @return
     *
     *    @throws ServiceActionException
     */
    @Override
    public SubmissionSet retrieveSubmissionSet(String id) throws ServiceActionException {
        return null;
    }

    /**
     * Method description
     *
     *
     * @param id
     *
     * @return
     *
     * @throws ServiceActionException
     */
    @Override
    public SubmissionSet[] retrieveSubmissionSets(Collection<String> id)
            throws ServiceActionException {
        return null;
    }
}
